package com.cyy.dao;

import com.cyy.domain.Student;
import com.cyy.vo.QueryParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface StudentDao {
    /**
     *一个简单类型的参数：
     *     简单类型：mybatis把java的基本数据类型和string都叫简单类型
     *      在mapper文件获取简单类型的一个参数类型的值，使用#{任意字符}
     *
     */
    public Student selectStudentById(Integer id);

    /**
     * 多个参数：命名参数，在形参定义的前面加入@Param("自定义参数名称")
     */
    List<Student> selectMultiParam(@Param("myname") String name,@Param("myage") Integer age);

    /**
     * 多个参数，使用Java对象作为接口中的方法的参数  (传参使用灵活些，自定义或者原有的)
     */
    List<Student> selectMultiObject(QueryParam param);

    List<Student> selectMultiStudent(Student student);
}
